<?php

namespace SummoIngenio\Sai\MatematicaBundle\Utility\Juego\P0;

use Doctrine\ORM\EntityManager;
use SummoIngenio\Sai\MatematicaBundle\Utility\Juego\JuegoBase;

/**
 * 
 * @author SVM
 */
class P01019 extends JuegoBase {
  private $resultado;
  private $base1;
  private $base2;
  private $base3;
  
  function init() {
	$result = rand(12,20);
	$respuestas = array();
	for ($i = 0; $i < $result; $i++) {
		if(($result-$i)>=10){
			array_push($respuestas,$result-$i);
		}
	}
	shuffle($respuestas);
	$this->resultado=$result;
	$this->base1 = $respuestas[0];
	$this->base2 = $respuestas[1];
	$this->base3 = $respuestas[2];
	$this->opciones = array(0,1,2,3,4,5,6,7,8,9,10);
  }

  public function getHtmlJugable() {
    return $this->render('P0/P01019/jugable', array(
      'resultado'=>$this->resultado,
	  'base1'=>$this->base1,
	  'base2'=>$this->base2,
	  'base3'=>$this->base3,
	  'opciones'=>$this->opciones,	  
    ));
  }
  
  public function getHtmlResuelto() {
    return $this->render('P0/P01019/resuelto', array(
      'resultado'=>$this->resultado,
	  'base1'=>$this->base1,
	  'base2'=>$this->base2,
	  'base3'=>$this->base3,
	  'opciones'=>$this->opciones,	  	  
    ));
  }
  
  public function getHtmlDesactivado() {
    return $this->render('P0/P01019/desactivado', array(
      'resultado'=>$this->resultado,
	  'base1'=>$this->base1,
	  'base2'=>$this->base2,
	  'base3'=>$this->base3,
	  'opciones'=>$this->opciones,	  	  
    ));
  }

  public function getPregunta() {
      return '';
  }

  public function getCss() {
    $aRetornar = array(
      "tipo"      => "archivo",
      "contenido" => "P0/P01019.css"
    );
    return $aRetornar;
  }
  
  public function getJavascript() {
    $aRetornar = array(
      "tipo"      => "archivo",
      "contenido" => "P0/P01019.js"
    );
    return $aRetornar;
  }
  
  public function verificarRespuesta($respuestaUsuario) {
    $cadena = sprintf("%s + %s = %s,%s + %s = %s,%s + %s = %s",$this->base1,$respuestaUsuario->get('respuesta1'),$this->resultado,$this->base2,$respuestaUsuario->get('respuesta2'),$this->resultado,$this->base3,$respuestaUsuario->get('respuesta3'),$this->resultado);
	$rst = true;
	if($this->base1+$respuestaUsuario->get('valor1')!=$this->resultado){
		$rst = false;
	}
	if($this->base2+$respuestaUsuario->get('valor2')!=$this->resultado){
		$rst = false;
	}
	if($this->base3+$respuestaUsuario->get('valor3')!=$this->resultado){
		$rst = false;
	}	
    $aRetornar = array(
      'respuesta' => $cadena,
      'correcta'  =>  $rst,
    );
    
    return $aRetornar;
  }
  
  public function __sleep() {
    return array(
      'resultado',
      'base1',
	  'base2',
	  'base3',
	  'opciones',
    );
  }
}
